During operations of a host computer and a peripheral device, error conditions arise between the host computer and the peripheral device. When this error condition occurs, there is a possibility that user data, typically stored in a data buffer, will be lost if operations are continued during the error condition. Previous methods of dealing with this problem have focused on correcting the error within the host computer.
The intelligent peripheral interface [IPI] device generic command for magnetic and optical disc drives, otherwise identified as ANSI X3.132-1987, defines a sequence known as command chaining. The purpose of command chaining is to protect user data in a data buffer when an error condition is detected by a peripheral recording device.
The command chaining sequence enables a host computer to logically link a series of commands. Thus, when a command in the chain is unsuccessful, the next command cannot be executed. This causes the command chain to terminate and the remaining commands in the chain are not executed. The termination of the command chain prevents the execution of the next command in the command queue allowing the host computer to initiate an error recovery algorithm for the unsuccessful command.
The command chaining sequence places the responsibility on the host computer to logically link the series of commands and to incorporate an error recovery algorithm for any terminated commands. This method puts additional burdens on the host computer by forcing it to maintain the processing capability to logically link the command strings and to store the error recovery algorithm.
Thus, a need has arisen for a method for preventing the loss of user data from the buffers of a peripheral recording device when an error is detected by the peripheral device; where the method does not require additional processing capabilities of the host computer to be used.